home *** CD-ROM | disk | FTP | other *** search
/ Winzipper / Winzipper_ISO.iso / nt4.0 server / SYSPRINT.SE_ / sysprint.sep
Text File  |  1994-07-30  |  3KB  |  103 lines

  1. @
  2. @Lerrordict begin /handleerror { $error begin newerror { /newerror false
  3. @Ldef showpage 72 72 scale /x .25 def /y 10 def /Helvetica findfont .2
  4. @Lscalefont setfont x y moveto (PostScript Error Handler)
  5. @Lshow /y y .2 sub .2 sub def x y moveto
  6. @L(Offending Command = ) show /command load { dup type /stringtype ne { (
  7. @Lmax err string ) cvs } if show } exec /y y .2 sub def x y moveto (Error
  8. @L= ) show errorname { dup type dup ( max err string ) cvs show ( : ) show
  9. @L/stringtype ne { ( max err string ) cvs } if show } exec /y y .2 sub def
  10. @Lx y moveto (Stack =) show ostack { /y y .2 sub def x 1 add y moveto dup
  11. @Ltype /stringtype ne { ( max err string ) cvs } if show } forall showpage
  12. @L} if end } def end
  13. @L% Pull off the job specific values:
  14. @L%----------------------------------
  15. @L/name (@N@L) def
  16. @L/jobid(@I@L) def
  17. @L/date (@D@L) def
  18. @L/time (@T@L) def
  19. @L% Get the page limits
  20. @L%--------------------
  21. @Lnewpath clippath closepath pathbbox
  22. @L/ymax exch def
  23. @L/xmax exch def
  24. @L/ymin exch def
  25. @L/xmin exch def
  26. @L/PrintWidth xmax xmin sub def
  27. @L/PrintHeight ymax ymin sub def
  28. @L% Define some handy procedures and values
  29. @L%----------------------------------------
  30. @L/inch {72 mul} def
  31. @L/White 1 def
  32. @L/Black 0 def
  33. @L/Gray .9 def
  34. @L/CenterString {
  35. @L    /str exch def /width exch def
  36. @L    width str stringwidth pop sub 2 div 0 rmoveto
  37. @L    str
  38. @L} def
  39. @L% Print the printers logo (if any)
  40. @L%---------------------------------
  41. @L/SysPrint where
  42. @L{
  43. @L    pop
  44. @L    SysPrint
  45. @L}{
  46. @L    /Times-Roman findfont .5 72 mul scalefont setfont
  47. @L    PrintWidth 2 div 6 72 mul moveto
  48. @L    (\\\\server\\name) dup stringwidth pop 2 div neg 0 rmoveto show
  49. @L    PrintWidth 2 div 5 72 mul moveto
  50. @L    (PSCRIPT Page Separator) dup stringwidth pop 2 div neg 0 rmoveto show
  51. @L}ifelse
  52. @L% Set some standard parameters
  53. @L%-----------------------------
  54. @L100 0 {dup mul exch dup mul add 1 exch sub} setscreen
  55. @L2 setlinewidth 2 setmiterlimit
  56. @L% Clear and outline the title area
  57. @L%---------------------------------
  58. @Lnewpath
  59. @Lxmin ymax moveto
  60. @Lxmax ymax lineto
  61. @Lxmax ymax 1.5 inch sub lineto
  62. @Lxmin ymax 1.5 inch sub lineto
  63. @Lclosepath
  64. @Lgsave
  65. @Lcurrentgray 1 setgray fill setgray
  66. @Lgrestore
  67. @Lcurrentlinewidth 1 setlinewidth stroke setlinewidth
  68. @L% Add the label header
  69. @L%---------------------
  70. @L/Helvetica findfont .2 inch scalefont setfont
  71. @L% Date --------------------------------------
  72. @Lxmin .25 inch add ymax .2 inch sub moveto
  73. @L(Date: ) show date show
  74. @L% Time
  75. @LPrintWidth 1.5 inch sub ymax .2 inch sub moveto
  76. @L(Time: ) show time show
  77. @L% Job Number
  78. @LPrintWidth 2 div ymax .2 inch sub moveto
  79. @Ljobid stringwidth pop
  80. @L( : ) stringwidth pop
  81. @Lname  stringwidth pop
  82. @Ladd add 2 div
  83. @Lneg 0 rmoveto
  84. @Ljobid show ( : ) show name show
  85. @L% Underline label header
  86. @Lnewpath
  87. @Lxmin ymax .3 inch sub moveto xmax ymax .3 inch sub lineto
  88. @Lclosepath
  89. @Lstroke
  90. @L% Add the username
  91. @L%-----------------
  92. @L/Helvetica-Bold findfont 1 inch scalefont setfont
  93. @Lnewpath
  94. @Lxmin ymax 1.25 inch sub moveto
  95. @LPrintWidth name CenterString true charpath
  96. @Lclosepath
  97. @Lgsave
  98. @LGray setgray fill
  99. @Lgrestore
  100. @Lstroke
  101. @Lshowpage
  102. @E
  103.